const express = require('express')
const app = express()




/* 定义一个自定义的中间件 */
const z1 = function (req, res, next) {
    req.token = '主板'
    console.log(req.token, req.token2, '我是中间件11111')
    next()  //  不调用next下一步无法进行 v  =====拦截器
}
const z2 = function (req, res, next) {
    req.token2 = '电池'
    console.log('我是中间件2222')
    next()  //  不调用next下一步无法进行 v  =====拦截器
}



app.use(z1)//  注册中间件   应用级别中间件  先走CC
app.use(z2)//  注册中间件   应用级别中间件  先走CC


/* 1-应用级别中间件 */
app.use((req, res, next) => {
    console.log('简写中间件==33333')
    next()
})


const router = require('./router')
app.use(router)



// 2. 定义错误级别的中间件，捕获整个项目的异常错误，从而防止程序的崩溃
app.use((err, req, res, next) => {
    console.log('发生了错误！' + err.message)
    res.send('Error：' + err.message)
})






app.listen(2001, () => {
    console.log('服务器:http://127.0.0.1:2001')
})